Market adoption of wireless LAN (WLAN) technology has exploded, as users from a wide range of backgrounds and vertical industries have brought this technology into their homes, offices, and increasingly into the public air space. This inflection point has highlighted not only the limitations of earlier-generation systems, but also the changing role that WLAN technology now plays in people's work and lifestyles across the globe. Indeed, WLANs are rapidly changing from convenience networks to business-critical networks. Increasingly users are depending on WLANs to improve the timeliness and productivity of their communications and applications. In doing so, these users require greater visibility, security, management, and performance from their network.
Flow control in mesh networks is a difficult problem because of the complexity of the interacting traffic patterns. This is true even for simple tree-shaped mesh networks served by a single root node in that inbound and outbound flows of at least four different priority levels interact with each other. The flow control problem is further aggravated by the use of the Carrier Sense Multiple Access (CSMA) medium access techniques in many wireless networks, especially in cases of imperfect Radio Frequency (RF) coupling between the nodes sharing the same channel: high traffic loads generated by some nodes will prevent successful reception of other traffic at their neighbour nodes. This effect is called starvation. Although it is most prevalent in single RF channel systems, starvation can also appear in multi-channel RF systems.
In a multi-hop network, intermediate nodes that carry traffic for other nodes may observe their buffers being filled up quickly, which may result in buffer overflow and packet losses. Flow control and congestion control have always been important services available over the Internet. They prevent sending nodes from overwhelming the receiving nodes and avoid grid lock. For instance, Transmission Control Protocol (TCP) has both flow control and congestion control. However, being an end-to-end protocol, TCP has very coarse timing resolution and a long response time. Thus, TCP's congestion control does not react promptly to local congestion situations. Further, User Data Protocol (UDP) does not have any congestion control mechanism built in, so an external mechanism is required.
Providing congestion control is challenging yet important in a multi-hop wireless environment. First, the wireless medium is a shared resource, and any bandwidth consumed by one node affects the bandwidth available to its neighboring nodes. Second, in a multi-hop mesh network, traffic aggregates at intermediate nodes. If the intermediate nodes experience buffer overflow and start to drop the packets that have been delivered over multiple hops, more bandwidth is wasted. Third, TCP is very sensitive to packet losses and will throttle its congestion window in half upon detection of a single packet loss. Also, without congestion control, a multi-hop wireless network may suffer from congestion collapse, where the end-to-end throughput drops dramatically.